#!/bin/bash

# 确保脚本在出错时退出
set -e

# 显示构建信息
echo "开始构建SenseVoice OpenAI API兼容服务的Docker镜像..."

# 进入项目根目录（假设当前目录是docker/）
cd ..

# 检查模型目录是否存在
if [ ! -d "models/iic" ]; then
    mkdir -p models/iic
fi

# 检查模型文件是否存在，如果不存在则下载
if [ ! -d "models/iic/SenseVoiceSmall" ]; then
    echo "SenseVoiceSmall模型文件不存在，开始下载模型..."
    # 确保目录存在
    mkdir -p models/iic/SenseVoiceSmall
    # 下载模型到正确的位置
    python3 model_download.py --model_name iic/SenseVoiceSmall --local_dir models/iic/SenseVoiceSmall
    # 创建标记文件
    echo "下载时间: $(date)" > models/iic/SenseVoiceSmall/LOCAL_MODEL_FLAG.txt
    echo "SenseVoiceSmall模型下载完成"
fi

if [ ! -d "models/iic/speech_fsmn_vad_zh-cn-16k-common-pytorch" ]; then
    echo "VAD模型文件不存在，开始下载模型..."
    # 确保目录存在
    mkdir -p models/iic/speech_fsmn_vad_zh-cn-16k-common-pytorch
    # 下载模型到正确的位置
    python3 model_download.py --model_name iic/speech_fsmn_vad_zh-cn-16k-common-pytorch --local_dir models/iic/speech_fsmn_vad_zh-cn-16k-common-pytorch
    # 创建标记文件
    echo "下载时间: $(date)" > models/iic/speech_fsmn_vad_zh-cn-16k-common-pytorch/LOCAL_MODEL_FLAG.txt
    echo "VAD模型下载完成"
fi

# 构建Docker镜像
docker build -t sense-voice-api:1.0 -f docker/Dockerfile .

echo "Docker镜像构建完成！"
echo "您可以使用以下命令启动服务："
echo "docker-compose -f compose.yaml up -d"
echo ""
echo "服务将在 http://localhost:8000 上运行" 